In communications networks, switches may be grouped together in stacks for switching under common management. A switch stack (hereinafter also referred to simply as a “stack”) is a collection of one or more switches interconnected via dedicated ports and cables that functions as a single switch from the user's perspective and that operates under common control or management. Switches belonging to a switch stack are said to be joined, and the switch stack may be capable of data transfer capacities beyond those of any individual switch joined in the stack. Switches in a switch stack are referred to herein as members of the stack. Centralized management of the stack members may be accomplished by communicating between member switches using the dedicated ports and cables described above.
In one example of when it may be desirable to join switches as members of a common stack is when an operator wishes to incrementally add switching capacity to his or her network. For example, the network may initially have a single standalone switch that switches packets and performs management functions, such as maintaining routing or forwarding tables. If the operator desires to double the switching capacity, rather than purchasing a new switch with twice the capacity of the original switch, the operator may purchase a switch with the same capacity as the original switch. The operator may configure the new switch to join the stack of the original switch. The two switches, being members of a common stack, function as a single switch with double the switching capacity while retaining common management.
In a typical embodiment, a stack member may be selected to provide centralized management functions for the stack and will hereinafter be referred to as the “stack master”. In addition to providing centralized management functionality, a stack master is also a member of the stack. The ports and cables dedicated to communicating information associated with stack management will hereinafter be referred to as “stacking ports” and “stacking links,” respectively. Stacking links may be used to transmit data using protocols designed to allow data plane constructs, such as Virtual Local Area Networks (VLANs) and Link Aggregation Groups, to contain ports belonging to different switches within the stack. Stacking links may carry both data plane traffic and management plane traffic, including traffic associated with control and status of the stack.
Current implementations of switch stacks provide for automatically joining connected switches into a switch stack because it is assumed that when a physical connection is made between the stacking ports of two switches the user intended to join the connected switches into a stack. This process may be referred to as “automatic stack joining”. When a switch automatically joins a stack, its configuration including layer 3 routing and layer 3 forwarding tables, may be replaced with configuration data for the stack.
One problem associated with conventional automatic stack joining is that, in many cases, the physical connection of the stacking ports of two switch stacks may be made accidentally, and consequently result in the unintended and undesired reconfiguration of the switch that was mistakenly connected to the stack. Such undesired reconfiguration can result in the switches layer 2 forwarding and layer 3 routing tables being overwritten. As a result, the switch will no longer be able to properly route or switch packets for its network without manual re-provisioning by an operator. Unintentional automatic stack joining can be common in switch equipment installations where the density of switches and associated cabling is high.
Accordingly, a need exists for improved methods and systems for providing accidental stack join protection.